package com.zm.controller;

import com.baomidou.mybatisplus.core.conditions.query.QueryWrapper;
import com.zm.entity.User;
import com.zm.service.IUserService;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.util.StringUtils;
import org.springframework.web.bind.annotation.*;

import java.util.List;

@RequestMapping("/user")
@RestController
public class UserController {

    @Autowired
    private IUserService userService;

    @PostMapping("/addUser")//传输数据方式用post接受的数据需要用RequestBody注解
    public Boolean addUser(@RequestBody User user){
        return userService.save(user);
    }
    @GetMapping("/getUserList")//传输数据方式用get,一般不用接收数据，不用添加注解
    public List<User> getUserList(){
        return userService.list();
    }
    @PostMapping("/searchUserList")//传输数据方式用post，接受的数据需要用RequestBody注解
    public List<User> searchUserList(@RequestBody User user){
        //1.设置查询条件
        QueryWrapper<User> wrapper=new QueryWrapper<>();
        String username=user.getUsername();
        String email=user.getEmail();
        if (!StringUtils.isEmpty(username)){//用户名不为空
            wrapper.like("username",username);//规则：包含要查询的用户名的数据
        }
        if (!StringUtils.isEmpty(email)){//邮箱不为空
            wrapper.eq("email",email);//规则：邮箱必须相等的数据
        }
        return userService.list(wrapper);//返回条件查询的结果集
    }
}
